home *** CD-ROM | disk | FTP | other *** search
/ TOS Silver 2000 / TOS Silver 2000.iso / programm / MM2_DEV / S / MOS / PATHENV.I < prev    next >
Encoding:
Modula Implementation  |  1990-12-14  |  1.2 KB  |  48 lines

  1. IMPLEMENTATION MODULE PathEnv;
  2. (*$R-*)
  3. (*$Y- wichtig, damit jeder Prozeß seine eigenen Vars hat! *)
  4.  
  5. FROM SYSTEM IMPORT ADDRESS;
  6. FROM MOSGlobals IMPORT PathStr, FileStr;
  7. IMPORT Strings;
  8.  
  9. VAR ok: BOOLEAN;
  10.  
  11. PROCEDURE ReplaceHome ( VAR name: ARRAY OF CHAR );
  12.   VAR idx: CARDINAL;
  13.   BEGIN
  14.     Strings.Upper (name);
  15.     idx:= ORD (name[0] = '?') (* FSelSymbol *);
  16.     IF Strings.Chr (name, idx) = HomeSymbol THEN
  17.       Strings.Delete (name, idx, 1, ok);
  18.       IF Strings.Chr (name, idx) = '\' THEN
  19.         (* um aus "*\DAT" nicht "D:\\DAT" zu machen *)
  20.         Strings.Delete (name, idx, 1, ok);
  21.       END;
  22.       Strings.Insert (HomePath, idx, name, ok)
  23.     END;
  24.   END ReplaceHome;
  25.  
  26. PROCEDURE HomeReplaced ( REF pathOrName: ARRAY OF CHAR ): FileStr;
  27.   VAR s: FileStr;
  28.   BEGIN
  29.     Strings.Assign (pathOrName, s, ok);
  30.     ReplaceHome (s);
  31.     RETURN s
  32.   END HomeReplaced;
  33.  
  34.  
  35. PROCEDURE NoSelect (REF d:ARRAY OF CHAR; VAR a,b:ARRAY OF CHAR; VAR c:BOOLEAN);
  36.   BEGIN
  37.     c:= FALSE
  38.   END NoSelect;
  39.  
  40. BEGIN
  41.   IF ADDRESS (SelectFile) = NIL THEN
  42.     (* wenn nicht NIL, wurde Wert von GEMEnv-EnvelopeProc schon gesetzt *)
  43.     SelectFile:= NoSelect
  44.   END;
  45.   HomePath:= ''
  46. END PathEnv.
  47.  
  48.